package com.ruoyi.wechat.service;

import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.baomidou.mybatisplus.extension.service.IService;
import com.ruoyi.wechat.domain.MsgReplyRule;

import java.util.List;

/**
 * 微信自动回复
 *
 * @author 2022-07-18
 */
public interface MsgReplyRuleService extends IService<MsgReplyRule> {

    /**
     * 保存自动回复规则
     *
     * @param msgReplyRule
     */

    @Override
    boolean save(MsgReplyRule msgReplyRule);

    /**
     * 获取所有的回复规则
     *
     * @return
     */
    List<MsgReplyRule> getRules();

    /**
     * 获取当前时段内所有有效的回复规则
     *
     * @return 有效的规则列表
     */
    List<MsgReplyRule> getValidRules();

    /**
     * 筛选符合条件的回复规则
     *
     *
     * @param appid
     * @param exactMatch 是否精确匹配
     * @param keywords   关键词
     * @return 规则列表
     */
    List<MsgReplyRule> getMatchedRules(String appid, boolean exactMatch, String keywords);

    /**
     * 自动回复的列表
     * @param page 分页
     * @param msgReplyRule 自动回复规则
     * @return 集合
     */
    Page<MsgReplyRule> selectReplyRuleList(Page page, MsgReplyRule msgReplyRule);
}
